understanding es6 destructuring